package com.yyfax.pay.depository.service.inner;

import java.util.Date;
import java.util.Map;

import com.yyfax.pay.common.enums.FuiouBusiTypeEnum;
import com.yyfax.pay.depository.domain.FuiouNotifyTask;

/**
 * 富友存管公用服务
 * 
 * @author buyi
 * @date 2017-09-02 11:43:53
 * @since v2.0.0
 */
public interface FuiouDepositCommonService {

	/**
	 * 生成异步通知任务
	 * 
	 * @author buyi
	 * @date 2017-09-04 10:03:53
	 * @since v2.0.0
	 * @param merchantCode商户号
	 * @param orderId 订单号
	 * @param busiId 业务主键
	 * @param busiType 业务类型
	 * @param notifyUrl 通知地址
	 * @param reqContent 通知内容
	 * @param startTime 开始时间，如果没有值，传null
	 * @param endTime 结束时间，如果没有值，传null
	 */
	public void saveNotifyTask(String merchantCode, String orderId, String busiId, FuiouBusiTypeEnum busiType, String notifyUrl, String reqContent,
			Date startTime, Date endTime);

	/**
	 * 生成异步通知任务
	 * 
	 * @author buyi
	 * @date 2017-09-14 16:14:32
	 * @since v2.0.0
	 * @param merchantCode
	 * @param orderId
	 * @param busiId
	 * @param busiType
	 * @param notifyUrl
	 * @param reqHeader
	 * @param reqContent
	 * @param startTime
	 * @param endTime
	 */
	public void saveNotifyTask(String merchantCode, String orderId, String busiId, FuiouBusiTypeEnum busiType, String notifyUrl,
			Map<String, String> reqHeader, String reqContent, Date startTime, Date endTime);

	/**
	 * 保存异步通知任务
	 * 
	 * @author buyi
	 * @date 2017-09-04 10:08:42
	 * @since v2.0.0
	 * @param task
	 */
	public void saveNotifyTask(FuiouNotifyTask task);

	/**
	 * 查询任务保存
	 * 
	 * @author heizq
	 * @date 2017-09-13 08:45:46
	 * @since v1.0.0
	 * @param merchantCode 商户号
	 * @param serialNo 查询流水
	 * @param busiId 业务主键
	 * @param busiType 业务类型
	 */
	public void saveQueryTask(String merchantCode, String busiId, FuiouBusiTypeEnum busiType);
}
